package cn.htsyb.synergy.maker.engine;

import cn.htsyb.synergy.maker.config.Maker;
import cn.htsyb.synergy.maker.model.MetaTable;

import java.util.List;

/**
 * 模板引擎接口
 */
public interface ITmplEngine {

    /**
     * 获取引擎名称
     *
     * @return
     */
    String getEngineName();

    /**
     * 获取引擎模板后缀名
     *
     * @return
     */
    String getTmplEndSuffix();

    /**
     * 生成器
     *
     * @param tableList
     */
    void generate(List<MetaTable> tableList);

    /**
     * 初始化引擎
     *
     * @param config
     */
    void initEngine(Maker config);

}
